/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package Main;

import java.util.ArrayList;

/**
 *
 * @author bryan
 */
public abstract class Environment {
    
    private String name;
    private ArrayList<Interaction> interactions;
    
    /**
     * Constructor
     * @param _name 
     */
    public Environment(String _name){
        name = _name;
        interactions = new ArrayList<>();
    }
    
    /**
     * Add an interaction
     * @param _interaction 
     */
    public void addInteraction(Interaction value){
        interactions.add(value);
    }
    
    /**
     * @param _interaction
     * @return _interaction
     */
    public abstract Interaction step(Interaction value);
    
    /**
     * Getter name
     * @return the name
     */
    public String getName() {
        return name;
    }

    /**
     * Setter name
     * @param _name the name to set
     */
    public void setName(String _name) {
        this.name = _name;
    }
}
